Display remoting involves accessing the graphical user interface generated by a first computing system at a second computing system remote from the first computing system. Display remoting is used in many contexts, including, for example, server-based computing models. Virtual desktop infrastructures (VDI) are one example of server-based computing, in which complete centrally-managed desktops are provided to users using computer virtualization technology. VDI may be used to create a large number of independent computing environments for a large number of users. In a typical VDI architecture, user displays and input devices are local to the user, but applications execute remotely in a server. As such, a virtual desktop may be accessible by one or more remote users through a network. The virtual desktop may mimic a desktop computer interface or an interface of another computer or system by providing a virtual screen or virtual display to an end user. Display remoting is used in many other contexts, however, including desktop sharing, network conferencing, and remote access to home or work computing systems, etc.
Display remoting requires identifying which portion of the virtual display have changed in a low-latency manner. Various methods have been used to identify display changes when the remote display server is integrated in the graphics display stack. To detect display changes, the contents of the frame buffer may need to be repeatedly read and compared with a previous frame buffer data. For an optimal user experience, it is desirable to reduce the latency between when a change occurs and when it is detected. However, polling the full screen at a high frequency consumes large amounts of a central processing unit (CPU) resources. Because of the amount of CPU resources required to read and differentiate a full frame, the minimum average latency that can be achieved also decreases as the monitored resolution increases.
To address this challenge, U.S. patent application Ser. No. 12/428,949, filed Apr. 23, 2009 and entitled “Method and System For Identifying Drawing Primitives for Selective Transmission to A Remote Display” and U.S. patent application Ser. No. 12/428,971, filed Apr. 23, 2009 and entitled, “Method And System for Copying a Framebuffer For Transmission to a Remote Display,” both of which are incorporated herein by reference, describe an efficient method of detecting display updates (differences between previous and current frames) and transmitting the updates to a remote system.